package online.yangcloud.common.model.business.database;

import java.lang.reflect.Field;
import java.util.List;

/**
 * 实体类信息
 * @author zhuboyang
 * @since 2024年03月19 21:58:11
 */
public class EntityInfoBusiness {

    /**
     * 表名
     */
    private String tableName;

    /**
     * 表释义
     */
    private String tableDesc;

    /**
     * 实体类
     */
    private Object clazz;

    /**
     * 属性字段
     */
    private List<Field> fields;

    private EntityInfoBusiness() {
    }

    public static EntityInfoBusiness builder() {
        return new EntityInfoBusiness();
    }

    public String getTableName() {
        return tableName;
    }

    public EntityInfoBusiness setTableName(String tableName) {
        this.tableName = tableName;
        return this;
    }

    public String getTableDesc() {
        return tableDesc;
    }

    public EntityInfoBusiness setTableDesc(String tableDesc) {
        this.tableDesc = tableDesc;
        return this;
    }

    public Object getClazz() {
        return clazz;
    }

    public EntityInfoBusiness setClazz(Object clazz) {
        this.clazz = clazz;
        return this;
    }

    public List<Field> getFields() {
        return fields;
    }

    public EntityInfoBusiness setFields(List<Field> fields) {
        this.fields = fields;
        return this;
    }

    @Override
    public String toString() {
        return "EntityInfoBusiness["
                + " tableName=" + tableName + ","
                + " tableDesc=" + tableDesc + ","
                + " clazz=" + clazz + ","
                + " fields=" + fields
                + " ]";
    }
}
